//引入第三方包 express
var express = require('express');
//引入验证token有效性的第三方包 express-jwt
var {expressjwt} = require('express-jwt');

//实例化express
var app = express()


//设置静态资源托管文件夹
//app.use() 注册中间件
//express.static() express内置的一个静态资源托管的中间件
app.use(express.static('static'));

//在所有接口前设置 处理post请求参数的中间件
app.use(express.json());
app.use(express.urlencoded({ extended: false }));

//设置token验证的中间件=====放在所有中间件的后边=========
//unless 设置白名单，白名单中的接口都可以免除验证
app.use(expressjwt({//解密
    secret: '1234',//密钥
    algorithms: ['HS256'],//算法
}).unless({ path: ['/user/login', '/user/register'] }));//token白名单


//导入拆分出去的子路由
var userRouter = require('./router/userRouter')
var goodRouter = require('./router/goodRouter')
//注册子路由, 凡是 '/user' 开头的请求, 都找userRouter这个子路由来提供服务.
//前端发请求 '/user/list' , '/user/search' , '/user/login'  都会找userRouter
app.use('/user', userRouter)

//前端发请求 '/good/list' , '/good/search' , 都会找goodRouter
app.use('/good', goodRouter)

// app.put()
// app.delete()

//设置监听
app.listen(8080, () => {
    console.log('服务端运行在: http://localhost:8080');
})



